#ifndef ROLEMANAGER_H
#define ROLEMANAGER_H

#include <QObject>
#include <QVector>
#include <QJsonArray>
#include <QJsonObject>
#include <QDir>

struct Role {
    QString id;
    QString name;
    QString description;
    QString prompt;
};

class RoleManager : public QObject
{
    Q_OBJECT
public:
    explicit RoleManager(QObject *parent = nullptr);

    bool loadRoles(const QString &filePath);
    QVector<Role> getRoles() const;
    Role getRoleById(const QString &id) const;
    bool saveCustomRole(const QString &name, const QString &prompt, const QString &description = "");
private:
    QVector<Role> m_roles;
};

#endif // ROLEMANAGER_H
